The present invention relates to operation of memory storage systems, and more particularly, to reading multi-level memory cells that use time delay as a level characteristic.
Typical semiconductor computer memories are fabricated on semiconductor substrates consisting of arrays of large number of physical memory cells. In general, one bit of binary data is represented as a variation of a physical parameter associated with a memory cell. Commonly used physical parameters include threshold voltage variation of Metal Oxide Field Effect Transistor (MOSFET) due to the amount of charge stored in a floating gate or a trap layer in non-volatile Electrically Erasable Programmable Read Only Memory (EEPROM), or resistance variation of the phase change element in Phase-change Random Access Memory (PRAM).
Increasing the number of bits to be stored in a single physical semiconductor memory cell is an effective method to lower the manufacturing cost per bit. Multiple bits of data can also be stored in a single memory cell when variations of the physical parameter can be associated with multiple bit values. This multiple bits storage memory cell is commonly known as a Multi-Level Cell (MLC). Significant amount of effort in computer memory device and circuit designs is devoted to maximize the number of bits to be stored in a single physical memory cell. This is particularly true with storage class memory such as popular non-volatile Flash memories commonly used as mass storage devices.
The basic requirement for multiple bit storage in a semiconductor memory cell is to have the spectrum of the physical parameter variation to accommodate multiple non-overlapping bands of values. The number of bands required for an n-bit cell is 2″. A 2-bit cell needs 4 bands, a 3-bit cell needs 8 bands and so forth. Thus, the available spectrum of a physical parameter in a semiconductor memory cell is typically the limiting factor for multiple bit memory storage.
In addition to the limiting spectrum width, the ability for a memory controller or memory device to program or read a characteristic parameter in a memory cell diminishes as the number of levels in a memory cell increases. Factors such as electrical noise, sense voltage disturbance, and spectrum width all interfere with the accuracy of a characteristic parameter value read from a memory cell. It is desirable to devise a method to program and read a characteristic parameter to many distinct levels, while minimizing the perturbation to the parameter during read/write processes involving the memory cells.